package com.wanxi;

import java.util.Scanner;

public class MaxOfArray {
    public static void main(String[] args) {
        int length = getNumber("请输入数组长度: ");
        int[] array = getOneArray(length);
        assignmentArray(array, length);
        runArray(array);
        int max = getMaxOfArray(array);
        System.out.println("数组元素的最大值是： " + max);

    }

    /**
     * 得到键盘输入的一个整数
     *
     * @return
     */
    private static int getNumber(String tips) {
        Scanner scanner = new Scanner(System.in);
        System.out.print(tips);
        int num = scanner.nextInt();

        return num;
    }

    /**
     * 得到一个数组
     *
     * @param length
     * @return
     */
    private static int[] getOneArray(int length) {
        int[] array = new int[length];

        return array;
    }


    /**
     * 为数组的元素赋值，赋值内容键盘输入
     *
     * @param array
     * @param length
     */
    private static void assignmentArray(int[] array, int length) {
        for (int i = 0; i < length; i++) {
            int num = getNumber("请输入索引为" + i + "的元素数据: ");

            array[i] = num;
        }
    }


    /**
     * 遍历数组，并打印数组元素
     *
     * @param array
     */
    private static void runArray(int[] array) {
        System.out.print("[");
        for (int i = 0; i < array.length; i++) {
            if (i != array.length - 1) {
                System.out.print(array[i] + " ");
            }
            if (i == array.length - 1) {
                System.out.println(array[i] + "]");
            }
        }
    }

    /**
     * 找出数组的最大元素
     *
     * @param array
     */
    private static int getMaxOfArray(int[] array) {
        int max = 0;
        for (int i = 0; i < array.length; i++) {
            max = max > array[i] ? max : array[i];
        }
        return max;

    }


}
